import { Injectable } from '@nestjs/common';
import * as bcrypt from 'bcrypt'; // 这是一个处理密码加盐HASH和验证密码的库
/**
 * 工具类 密码hash加解密
 */

@Injectable()
export class UtilityService {
  async hashPassword(password: string): Promise<string> {
    //生成一个盐值，用于增强哈希的安全性
    const salt = await bcrypt.genSalt();
    // 使用生成的盐值对密码进行哈希，并返回哈希的结果
    return await bcrypt.hash(password, salt);
  }

  async comparePassword(password: string, hashedPassword: string) {
    //比较密码和hash值，返回比较结果
    return await bcrypt.compare(password, hashedPassword);
  }
}
